package com.wxw.BaseLibrary.infa;

import android.database.Cursor;
import com.wxw.BaseLibrary.db.DBTool;

/**
 *
 * @author user
 * @date 2016/4/4
 */
public interface IDbObject {

    /**
     * 将当前对象添加到数据表中
     * @param dbTool
     * @return
     */
    int insert(DBTool dbTool);

    /**
     * 将当前对象的内容更新到数据表中
     * @param dbTool
     * @return
     */
    int update(DBTool dbTool);

    /**
     * 将当前对象从数据表中删除
     * @param dbTool
     * @return
     */
    int delete(DBTool dbTool);

    /**
     * 使用 Cursor 对象填充当前对象的各个字段值
     * @param cursor
     * @return
     */
    IDbObject full(Cursor cursor);

    /**
     * 清除当前对象所对应数据表的所有内容
     * @param dbTool
     */
    void clear(DBTool dbTool);

    /**
     * 获取生成当前对象数据内容的SQL字符串
     * @return
     */
    String getDataSql();

    /**
     * 获取服务器接口的处理方法名称
     * @return
     */
    String getSyncMethod();

    /**
     * 获取该数据对象是否进行全部更新操作
     * @return
     */
    boolean doClear();
}
